package com.gem.day03;

/**
 * 本类用来演示Java方法重载
 * 
 * 前提条件:同一个类中
 * 其他条件:方法名一定要相同,参数列表一定不一样,修饰符和返回类型无所谓
 * 
 * 作用:大大简化系统方法定义的复杂性
 * 
 * @author easonsy
 * 2020年7月21日 上午8:53:08
 */
public class OverLoadDemo {

	public static void main(String[] args) {
		OverLoadDemo od = new OverLoadDemo();
		//3.0和2.0是调用add方法后传入的参数,具有具体的数值,叫做实参
		double d = od.add(3.0, 2.0);
		System.out.println(d);
	}

	//形参:i和j就是形参,它是形式上的参数,没有具体的值,相当于代数中的未知数
	public int add(int i, int j) {
		return i + j;
	}

	public int add(int x, int y, int z) {
		return x + y + z;
	}

	public double add(double d1, double d2) {
		System.out.println("double add");
		return d1 + d2;
	}

	public double add(int x, double y) {
		return x + y;
	}

	public double add(double x, int y) {
		return x + y;
	}
}
